import java.util.List;

class Solution {
    public int sumIndicesWithKSetBits(List<Integer> nums, int k) {
        int res = 0;
        for (int i=0; i<nums.size();i++){
            if (bitCount(i)==k){
                res += nums.get(i);
            }
        }
        return res;
    }

    public int bitCount(int x){
        int count = 0;
        while (x!=0){
            count += (x%2);
            x/=2;
        }
        return count;
    }

    public int bitCount1(int x) {
        x = (x & 0b0101010101) + ((x & 0b1010101010) >> 1);
        x = ((x & 0b0011001100) >> 2) + (x & 0b1100110011);
        x = (x >> 8) + ((x >> 4) & 0b1111) + (x & 0b1111);
        return x;
    }

// 作者：力扣官方题解
// 链接：https://leetcode.cn/problems/sum-of-values-at-indices-with-k-set-bits/solutions/2614602/ji-suan-k-zhi-wei-xia-biao-dui-ying-yuan-axzr/
// 来源：力扣（LeetCode）
// 著作权归作者所有。商业转载请联系作者获得授权，非商业转载请注明出处。
}